'''
无敌算法 v1.0

获取历史数据，按时间排序：从前->现在
输出：
当前数据总数、命中数、命中率、当前排序号、总奖金、全平均，红平均，最大遗漏，当前遗漏，平均遗漏，遗漏方差，遗漏中数，遗漏众数

'''
import numpy as np

class Shenxian:
    def __init__(self):
        pass



    def wudi(self):
        # np.random.seed(42) # 1/3的概率
        arr = np.random.randint(0, 6, 1000)
        # 将数值等于1的是开奖号码，其他的全部是0
        arr[arr != 1] = 0
        print(arr)
        # 获取所有中奖的下标
        indexs = np.array(np.where(arr == 1))
        print(indexs)
        # 计算前面与后面一项只差，计算相隔遗漏数
        zhic = np.diff(indexs)
        # 之差要减去1，才是他们的遗漏间隔
        zhic -= 1
        print(zhic)

        jisarr = zhic[0]
        print(jisarr)
        print('计算数据的和', np.sum(jisarr))  # 计算数据的和
        print('计算数组均值', np.mean(jisarr))  # 计算数组均值
        print('计算数组标准差', np.std(jisarr))  # 计算数组标准差
        print('计算数组方差', np.var(jisarr))  # 计算数组方差
        print('计算数组最小值', np.min(jisarr))  # 计算数组最小值
        print('计算数组最大值', np.max(jisarr))  # 计算数组最大值
        print('返回数组最小元素索引', np.argmin(jisarr))  # 返回数组最小元素索引
        print('返回数组最大元素索引', np.argmax(jisarr))  # 返回数组最大元素索引
        print('返回数组中位数', np.median(jisarr))
        values, counts = np.unique(jisarr, return_counts=True)
        mode = values[counts.argmax()]
        print('返回数组统计', values)
        print('返回数组众数', mode)

if __name__ == '__main__':
    s = Shenxian()
    s.wudi()